package br.ita.supertrunfo.client.core.observer;

import java.util.LinkedList;

import br.ita.supertrunfo.client.core.interfaces.observer.*;

public class SujeitoImpl implements Sujeito {

	private static final long serialVersionUID = 1L;
    private LinkedList<Observador> listaDeObservadores = new LinkedList<Observador>();

    //@Override
	public void notificaObservadores(String mensagem){
        for(int i = 0; i < this.listaDeObservadores.size(); i++)
        	this.listaDeObservadores.get(i).atualiza(mensagem);		
	}

    //@Override	
	public void registraComoObservador(Observador observador) {
		this.listaDeObservadores.add(observador);
	}

    //@Override
	public void removeObservador(Observador observador) {
		this.listaDeObservadores.remove(observador);
	}

    public void removeTodosOsObservadores() {
        this.listaDeObservadores.clear();
    }
}
